home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Compute! Gazette 1987 April
/
1987-04.d64
/
screen mapper
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
2KB
|
71 lines
10 pr=1:rem set pr=0 for 1526 series, pr=1 for 1525 series
20 sm=1024:cm=55296:rem sm=3072:cm=2048 on the plus 4/16
30 b$=chr$(8):c1$=chr$(14):c$=chr$(15):rem printer codes
40 ifpr=0thenb$=""
50 d$=chr$(207):e$=chr$(165):f$=chr$(163)
60 print"[147]":print"[145] memory map printer "
70 print" 1 [146] small screen map"
80 print" 2 [146] small color map"
90 print" 3 [146] small graphic 320 x 200 map"
100 print" 4 [146] large screen map"
110 print" 5 [146] large color map"
120 print" 6 [146] large graphics map"
130 print" 7 [146] quit"
140 print"make your selection"
150 geta$:ifa$=""then150
160 a=asc(a$)-48:ifa=7then210:ifa<1ora>6then150
170 gosub490:onagosub220,230,240,340,360,380
180 print"[147]print another ?"
190 geta$:ifa$=""then190
200 ifa$="y"then60
210 print"[147]":end
220 s$="screen":s=sm:gosub620:return
230 s$="color":s=cm:gosub620:return
240 print#4,c1$"small graphics map"
250 x=24:gosub500
260 print#4,"0 . 1 . 2 . 3"
270 print#4," 0 0 0"
280 print#4," 0 0 0"
290 fori=10to200step10:print#4,c$;
300 forx=1to32:print#4,d$;:next:print#4,"[212]";:print#4,i;b$
310 nexti
320 print#4,c$"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
330 gosub520:return
340 print#4,c1$" large screen map"
350 x=22:gosub500:s=sm:s$=str$(s):gosub530:return
360 print#4,c1$" large color map"
370 x=22:gosub500:s=cm:s$=str$(s):gosub530:return
380 print#4,c1$" large graphics map"
390 x=18:gosub500
400 print#4,"[176][195] this block is address 0,0. add 10 going down and across"b$
410 print#4,c$"[221]"b$
420 forx=10to200step10
430 print#4,c1$;:fori=1to32:print#4,d$;:nexti
440 print#4,e$b$
450 print#4,c1$;:fori=1to33:print#4,e$;:nexti
460 print#4,b$:nextx
470 print#4,c1$"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
480 gosub520:return
490 print"[147]printing...":open4,4:return
500 ifpr=0thenopen6,4,6:print#6,chr$(x):close6
510 print#4,c$:return
520 print#4,c$:print#4:close4:return
530 print#4,"[176][195] this block starts at"s$". add 40 for each row you go down."b$
540 print#4,c$"[221]"b$:forx=1to25
550 print#4,c1$;:fori=0to39
560 print#4,d$;:nexti:print#4,b$
570 print#4,c1$;:fori=0to39
580 print#4,e$;:nexti:print#4,b$:nextx
590 print#4,c1$;:fori=0to39
600 print#4,f$;:nexti
610 x=24:gosub500:forx=stos+960step40:print#4,x:next:gosub520:return
620 print#4,c1$" small "s$" map"
630 p$=" ":ifs=cmthenp$=" "
640 x=24:gosub500
650 print#4,p$"0 . 1 . 2 . 3 ."
660 print#4,p$" 0 0 0"
670 fori=stos+960step40
680 print#4,c$i;:forx=0to39:print#4,d$;:next:print#4,"[212]"b$:nexti
690 print#4,c$p$"[163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163][163]"
700 gosub520:return